package com.tadu.day02.test;

/**
 *                         普通类   抽象类     接口类
 *                        【关系】             【特点】
 *       类与类             继承            只能单继承，可多层继承
 *       类与抽象类          继承            可以单继承，不可以多继承
 *       抽象类与抽象类       继承             只能单继承，可多层继承
 *       类与接口           实现              可以单继承，也可以多实现
 *                                           并且继承同时实现多个接口
 *       接口与接口          继承               可以单继承，可以多继承
 */
/*作业1：抽象类与接口区别和关系？简答*/
//区别：
    //1.抽象类是abstract修饰的，接口是interface定义的
    //2.抽象类是继承关系（extends），接口是实现（implements）
    //3.抽象类有构造器，接口没有构造器
    //4.抽象类可以有内部类，接口没有
    //5.抽象类实例化方法：继承--子类--调方法    接口实例化方法：实现implements---实现类---调方法【造型】
    //6.抽象类只能被单继承，一个类可以实现多个接口
//关系：
  //1.抽象类可以实现接口，接口不能继承抽象类
  // 2.都包含抽象方法



//5.接口与接口：     继承 ----    可以单继承，可以多继承
interface Loo{}     interface Foo{}
interface Voo extends Loo,Foo{}


//4.类与接口：实现----可以单继承，也可以多实现，并且继承同时实现多个接口
/**interface Loo{}     interface Foo{}
 class Joo{}
 class Voo extends Joo implements Loo,Foo{}*/


//3.抽象类与抽象类：继承---只能单继承，可多层继承
/**abstract class Loo{}
 abstract class Uoo extends Voo{}
 abstract class Voo extends Loo{}*/

//2.类与抽象类：继承----可以单继承，不可以多继承
//abstract class Uoo{}    abstract class Voo{}
//class Loo extends Uoo,Voo{}

//1.类与类：继承------单继承,可以多层继承
/**class Uoo{}
 class Loo extends Uoo{}
 class Voo extends Loo{}*/













public class 关系 {
}